package com.one.group.model.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

@Data
@SuppressWarnings("all")
@Builder
@Table(value = "sp_maintenance_record") // 映射数据库表名
@NoArgsConstructor
@AllArgsConstructor
public class MaintenanceRecord implements java.io.Serializable {

    @Id // 标识主键字段
    private Long id; // 主键ID

    @Column(value = "tenant_id", tenantId = true)
    private Long tenantId; // 租户ID（关联 sp_tenant 表）

    private Long equipmentId; // 设备ID（关联 sp_equipment 表）

    private Long maintenancePlanId;

    private String maintenanceOrderNumber; // 保养单号

    private Integer maintenanceCount; // 保养次数（默认0）

    private String maintainer; // 保养人

    private BigDecimal actualCost;

    private String executor;

    private int maintenanceHours;

    private String maintenanceProject; // 保养项目

    @Column(isLogicDelete = true)
    private Boolean isDeleted; // 逻辑删除标记（0-未删除，1-删除）

    private Date createTime; // 创建时间

    private Date updateTime; // 更新时间
}
